package com.cy.pj.sys.web.controller;

import com.cy.pj.common.util.PageUtil;
import com.cy.pj.sys.pojo.SysLog;
import com.cy.pj.sys.service.SysLogService;
import com.cy.pj.sys.web.pojo.JsonResult;
import com.github.pagehelper.ISelect;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

@RequestMapping("/log/")
@RestController
public class SysLogController {
    @Autowired
    private SysLogService sysLogService;
    @DeleteMapping("deleteById/{ids}")
    public JsonResult doDeleteById(@PathVariable Long...ids){
        sysLogService.deleteById(ids);
        return new JsonResult("delete ok");
    }
    @GetMapping("doFindById/{id}")
    public JsonResult doFindById(@PathVariable Long id){
        return new JsonResult(sysLogService.findById(id));
    }
    @GetMapping("doFindLogs")
    public JsonResult doFindLogs(SysLog sysLog){
//        return new JsonResult(PageUtil.startPage().doSelectPageInfo(()->
//                sysLogService.findLogs(sysLog)
//        ));//lambda(jdk8中特性)
        //1.PageUtil.startPage()启动分页拦截器
        //2.doSelectPageInfo 执行查询
        //3.
        return new JsonResult(PageUtil.startPage().doSelectPageInfo(new ISelect() {
            @Override
            public void doSelect() {
                sysLogService.findLogs(sysLog);
            }
        }));

    }
}
